package com.atguigu.tingshu.user.service;

import com.alibaba.fastjson.JSONObject;
import com.atguigu.tingshu.model.user.UserInfo;
import com.atguigu.tingshu.vo.user.UserInfoVo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.Map;

public interface UserInfoService extends IService<UserInfo> {

    /**
     * 微信登录授权
     *
     * @param code
     * @return
     */
    JSONObject wxLogin(String code);

    /**
     * 获取用户登录信息
     * @param userId
     * @return
     */
    UserInfoVo getUserInfoByUserId(Long userId);

    /**
     * 更新用户信息
     * @param userInfoVo
     */
    void updateUser(UserInfoVo userInfoVo);

    /**
     * 查询用户是否购买专辑
     * @param userId
     * @param albumId
     * @return
     */
    Boolean isBuyAlbum(Long userId, Long albumId);

    /**
     * 查询用户购买的声音id
     *
     * @param userId
     * @param albumId
     * @return
     */
    Map<String, Integer> getBuyTrackList(Long userId, Long albumId);
}
